package com.zhongyu.scheduler.provider.mapper;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.zhongyu.comm.pojo.Task;

import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Update;

import java.time.LocalDateTime;


public interface TaskMapper extends BaseMapper<Task> {

    @Update("update dm_task set version=#{taskVersion}+1 where id=#{taskId} and version=#{taskVersion}")
    public int updateTaskVersion(@Param("taskId") String taskId, @Param("taskVersion") Integer taskVersion);


    @Update("update dm_task set status=#{status},update_time=#{updateTime} where id=#{taskId}")
    public int updateStatus(@Param("taskId") String taskId,@Param("status") Integer status,@Param("updateTime") LocalDateTime updateTime);

    @Update("update dm_task set try_count=try_count+1,update_time=#{updateTime}where id=#{taskId}")
    public int updateTryCountByTaskId(@Param("taskId")String taskId,@Param("updateTime") LocalDateTime updateTime);

    @Update("update dm_task set errormsg=#{errormsg},update_time=#{updateTime}where id=#{taskId}")
    public int updateRrrormsg(@Param("taskId")String taskId,@Param("errormsg")String errormsg,@Param("updateTime") LocalDateTime updateTime);
}
